The present invention generally relates to a method for communicating information in a database. The present invention more particularly relates to a method for automatically providing notification to a user of the occurrence of a predetermined event within a database system operated in conjunction with a processing system.
A database is a collection of related information about a subject organized in a manner to facilitate operations such as retrieving information, drawing conclusions, and making decisions. Computerized databases are commonly used for storing data and making information available in a variety of formats to many users. As one example, a database may contain data pertaining to an inventory and purchasing system. Users may access the database to receive information about inventory on hand, orders which have been placed, and orders which have been filled.
Information in a database is usually divided into distinct data records, each with one or more data fields. Data are stored in the database in a variety of formats or as different kinds of data. For example, data may be stored as characters, in bytes composed of eight bits. Data may also be stored as integers, in two or more bytes; as long integers in four or more bytes; as strings, including up to 255 bytes; as text of up to 32,000 bytes; as real numbers; and as boolean values. In some databases, data may also be stored as a picture. The 4th Dimension.TM. relational database program, developed by ACI US, Inc., for Macintosh.TM. Computers, allows storage of picture data in the 4th Dimension database. In the 4th Dimension database, data which is not classified as one of the other types (character, integer, etc.) must be stored as a picture.
Computerized database systems are generally implemented in processing systems which include a processor and a memory, along with input and output devices. The processor operates in response to programs of instructions stored in the memory. The programs of instructions include the operating system, which is the program which controls processor internal functions, and the database system. The database system includes the database as well as a database management program or database engine. The database engine provides tools for retrieval, modification, deletion and insertion of data. These tools include application programs for manipulating data. The database engine includes one or more programs of instructions for controlling the processor, and the database includes a plurality of storage locations in the memory for storing data.
The computerized database may be implemented on a personal computer. For example, as noted, the 4th Dimension database program may be implemented on the Apple Macintosh personal computer, manufactured by Apple Computer, Inc. The personal computer may be operated on a network with other processing systems such as personal computers or mainframe computers. Different portions of the database system may be located on different processing systems on the network with the cooperation of the different processing systems being transparent to the user. Multiple users, using the same processing system or different processing systems on a network, may access data in the database. A master copy of the database may be maintained in a personal computer configured as a server. The master copy is accessible by users of personal computers configured as clients to the server. Data may be conveyed between users or between client and server for information, for approval, or for other reasons.
Users of a database system, such as the 4th Dimension database program, may write "externals", or external programs, for manipulating data in the database. An external may be, for example, a program of instructions in a programming language such as C or Pascal which allows the user to add operational features to the database. Such externals may be accessed or called by applications programs of the 4th Dimension database system. Also, such externals may access portions of the operating system of the personal computer. For example, an external operating on a Macintosh computer in conjunction with a 4th Dimension database located on the Macintosh computer may access the Macintosh System 7 operating system for manipulating data in the database.
In some applications, there is a need to provide information about miscellaneous database events to one or more persons or organizations. Such information may be text, graphics or other content. The information may notify the recipient of another user's database entry, the application of a digital signature, or other event.
Many processing systems provide electronic mail, or e-mail utilities for communicating messages or files among users on a network. Electronic mail is a form of store and forward messaging in which the recipient need not be present or active when the message is sent. The message will be stored on the network and forwarded to the user when the recipient is available. Electronic mail systems generally provide for sending a text message and/or one or more files to one or more recipients. Other recipients may be designated to receive "carbon copies" of the message or files. Still other recipients may be designated to receive "blind carbon copies" of the message or files.
For example, Apple Computer, Inc. provides AppleMail.TM. and PowerTalk.TM. software enabling messaging and electronic mail. These capabilities are part of a broader technology known as the Apple Open Collaboration Environment (AOCE.TM.).
Despite the availability of communication tools for users of processing systems, there remains a need for communicating information among users of a database system operated on the processing system. In particular, there is a need for a way to provide automatic notification of the occurrence of miscellaneous events within the database environment to one or more users who may be interested in those events.
For example, in an inventory and purchasing system, a purchase order may be prepared within the database and provided electronically to the preparer's supervisor for authorization. There is a need to automatically inform the supervisor that the purchase order is awaiting attention, even at times that the supervisor is not actively using the database. After authorization by the supervisor, there may be a need to automatically inform the preparer of this fact and to inform other interested users, such as users responsible for accounting and purchasing.